// 当用户名失去焦点时进行判断
$("#username").blur(function (evt) {
    $.ajax({
        type: "GET",
        url: "/user/judge",
        data: {userName: $("#username").val()},
        dataType: "json",
        success: function (response) {
            if (undefined !== response && response.success === true) {
                if (response.data.status) {
                   // 存在用户，无视
                }else {
                    layer.alert("用户不存在，请检查后再试！", { icon: 7 });
                }
            } else {
                layer.alert("网络异常，请刷新重试...")
            }
        }
    })
});

// 当第一个密码输入框按下键盘时进行判断
$("#password").keyup(function (evt) {
    // 判断密码强度
    if ($("#password").val() !== "") {
        var judge = checkPassWord($("#password").val());
        document.getElementById("passwordSafe").className = "s" + judge;
    }else {
        document.getElementById("passwordSafe").className = "";
    }
});

// 当第一个密码输入框失去焦点时进行判断
$("#password").blur(function (evt) {
    // 判断密码强度
    if ($("#password").val() !== "") {
        var judge = checkPassWord($("#password").val());
        if (judge < 1) {
            alert("密码强度太低，请重新输入！");
            $("#password").val("");
            $("#password")[0].focus();
            $("#password2").val("");
        }
    }else {
        $("#password2").val("");
    }
});

// 当第一个密码输入框按下键盘时进行判断
$("#password2").keyup(function (evt) {
    // 判断密码强度
    var passWord = $("#password").val();
    var passWord2 = $("#password2").val();
    if (passWord === passWord2) {
        document.getElementById("passwordSame").className = "r";
    }else {
        document.getElementById("passwordSame").className = "w";
    }
});
// 当第二个密码输入框失去焦点时进行判断
$("#password2").blur(function (evt) {
    // 和第一个密码框比较是否相同

});


// 进行注册请求
function lostwd() {
    var passWord = $("#password").val();
    var passWord2 = $("#password2").val();
    if (passWord !== passWord2) {
        alert("两次输入的密码不一样，请重新输入！");
        $("#password").val("");
        $("#password2").val("");
        $("#password")[0].focus();
        document.getElementById("passwordSafe").className = "";
        document.getElementById("passwordSame").className = "";
        return false;
    }
    $.ajax({
        type: "POST",
        url: "/register",
        data: {userName: $("#username").val(), password: $("#password").val()},
        dataType: "json",
        success: function (data) {
            if (undefined !== data && data.success === true) {
                window.location.href = '/';
                localStorage.setItem("id", data.data.user.id);
            } else {
                window.location.href = '/login';
            }
        }
    })
}

//校验密码强度
function checkPassWord(value) {
    // 0： 表示第一个级别 1：表示第二个级别 2：表示第三个级别
    // 3： 表示第四个级别 4：表示第五个级别
    var modes = 0;
    if (value.length < 6) {//最初级别
        return modes;
    }
    if (/\d/.test(value)) {//如果用户输入的密码 包含了数字
        modes++;
    }
    if (/[a-z]/.test(value)) {//如果用户输入的密码 包含了小写的a到z
        modes++;
    }
    if (/[A-Z]/.test(value)) {//如果用户输入的密码 包含了大写的A到Z
        modes++;
    }
    if (/\W/.test(value)) {//如果是非数字 字母 下划线
        modes++;
    }
    switch (modes) {
        case 1 :
            return 1;
            break;
        case 2 :
            return 2;
            break;
        case 3 :
            return 3;
            break;
        case 4 :
            return 4;
            break;
    }
}

// 设置全局监听事件
document.onkeydown = function (ev) {
    var e = ev || window.ev || arguments.callee.caller.arguments[0] || e.which;
    if (e && e.keyCode === 13) {
        lostwd();
    }
};